package com.coderman.modelfly.config;

import java.util.List;

/**
 * Created by ${fanchunshuai} on 2017-9-15.
 *
 * @version: V1.0
 * @Desc:
 * @Copyright (c) 2017 58到家-版权所有
 */
public class BeanConfig {
    /******************** class描述 ***********************/
    /**
     * 存放java类文件的地址
     */
    private String clazzPath;


    //clazz前缀
    private String preffix;

    //clazz后缀
    private String suffix;

    //存放clazz的路径
    private String packageName;

    //要继承的类名
    private String extendsClazz;

    //实现的类名
    private String implementsClazz;

    //引用的类名列表
    private List<String> importClazz;

    //类上的注解配置
    private AnnotationConfig clazzAnnotationConfig;

    //id注解配置
    private AnnotationConfig idAnnotationConfig;

    //属性注解配置
    private AnnotationConfig fieldAnnotationConfig;



    /************************ 注释 描述 *********************/
    private String author;
    private String version;
    private String copyright;

    public String getPreffix() {
        return preffix;
    }

    public void setPreffix(String preffix) {
        this.preffix = preffix;
    }

    public String getSuffix() {
        return suffix;
    }

    public void setSuffix(String suffix) {
        this.suffix = suffix;
    }

    public String getPackageName() {
        return packageName;
    }

    public void setPackageName(String packageName) {
        this.packageName = packageName;
    }

    public String getExtendsClazz() {
        return extendsClazz;
    }

    public void setExtendsClazz(String extendsClazz) {
        this.extendsClazz = extendsClazz;
    }

    public String getImplementsClazz() {
        return implementsClazz;
    }

    public void setImplementsClazz(String implementsClazz) {
        this.implementsClazz = implementsClazz;
    }

    public List<String> getImportClazz() {
        return importClazz;
    }

    public void setImportClazz(List<String> importClazz) {
        this.importClazz = importClazz;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public String getVersion() {
        return version;
    }

    public void setVersion(String version) {
        this.version = version;
    }

    public String getCopyright() {
        return copyright;
    }

    public void setCopyright(String copyright) {
        this.copyright = copyright;
    }


    public String getClazzPath() {
        return clazzPath;
    }

    public void setClazzPath(String clazzPath) {
        this.clazzPath = clazzPath;
    }

    public AnnotationConfig getClazzAnnotationConfig() {
        return clazzAnnotationConfig;
    }

    public void setClazzAnnotationConfig(AnnotationConfig clazzAnnotationConfig) {
        this.clazzAnnotationConfig = clazzAnnotationConfig;
    }

    public AnnotationConfig getIdAnnotationConfig() {
        return idAnnotationConfig;
    }

    public void setIdAnnotationConfig(AnnotationConfig idAnnotationConfig) {
        this.idAnnotationConfig = idAnnotationConfig;
    }

    public AnnotationConfig getFieldAnnotationConfig() {
        return fieldAnnotationConfig;
    }

    public void setFieldAnnotationConfig(AnnotationConfig fieldAnnotationConfig) {
        this.fieldAnnotationConfig = fieldAnnotationConfig;
    }

    @Override
    public String toString() {
        return "BeanConfig{" +
                "clazzPath='" + clazzPath + '\'' +
                ", preffix='" + preffix + '\'' +
                ", suffix='" + suffix + '\'' +
                ", packageName='" + packageName + '\'' +
                ", extendsClazz='" + extendsClazz + '\'' +
                ", implementsClazz='" + implementsClazz + '\'' +
                ", importClazz=" + importClazz +
                ", clazzAnnotationConfig=" + clazzAnnotationConfig +
                ", idAnnotationConfig=" + idAnnotationConfig +
                ", fieldAnnotationConfig=" + fieldAnnotationConfig +
                ", author='" + author + '\'' +
                ", version='" + version + '\'' +
                ", copyright='" + copyright + '\'' +
                '}';
    }
}
